package main

import "fmt"
import "time"

func main() {
	// 单向channel变量的声明非常简单，如下：
	//	var ch1 chan int       // ch1是一个正常的channel，不是单向的
	//	var ch2 chan<- float64 // ch2是单向channel，只用于写float64数据
	//	var ch3 <-chan int     // ch3是单向channel，只用于读取int数据

	//	// channel是一个原生类型，因此不仅支持被传递，还支持类型转换
	//	// 就是在单向channel和双向channel之间进行转换
	ch4 := make(chan int)
	//	ch4 := make(chan<- int)
	//	ch5 := make(<-chan int)

	func(ch <-chan int) {
		for value := range ch {
			fmt.Println("Parsing value", value)
		}
	}(ch4)
	ch4 <- 4
	time.Sleep(2e9)

}
